package belleza.relativa

import belleza.relativa.security.User

class BusquedaController extends InterceptorController {

    def transient personaService

    def index() {
        render view: 'busqueda'
    }

    def String wrapSearchParm(value) {
        '%' + value + '%'
    }

    def search() {
        //Me parece que esto habría que separarlo en el servicio InfoPersonaService
        def user = springSecurityService.getCurrentUser() as User
        params.sexoBuscado = user ? user.persona.sexo : getSession().getValue("sexoInvitado")

        Date date = new Date()
        Calendar cal = Calendar.getInstance()
        cal.setTime(date)
        int edad = Integer.parseInt(params.edad)
        cal.roll(Calendar.YEAR, edad * (-1))

        def personaId = user ? user.persona.id : getSession().getValue("idInvitado")
        params.anioNacimiento = cal.getTime()
        def list = personaService.buscarPersonas(params, personaId)

        if (user) {
            list.remove(user.getPersona())
        }
        render(template: 'searchResults', model: [searchresults: list])

    }
}
